Delay compensation

ABSTRACT

In a discrete tone system, a base station receives a transmission burst from a remote unit being installed that includes delay compensation pilot tones that are uniformly spread throughout the transmission bandwidth. The arrival time transmission burst is not synchronized with the other remote units transmitting to the base station. The base station measures the phase delay of each tone and calculates the delay of the remote unit from the slope of the line of phase angle versus tone frequency. The base station transmits a signal to the remote unit that includes the magnitude and direction of the delay, which allows the remote unit to adapt the timing of its transmission to be synchronized with the other remote units.

CROSS-REFERENCES TO RELATED APPLICATIONS

[0001] The invention disclosed herein is related to the copending U.S.patent application by S. Alamouti, et al, entitled “Method for FrequencyDivision Duplex Communications”, Ser. No. ______ filed on the same dayas the instant patent application, assigned to AT&T, and incorporatedherein by reference.

FIELD OF THE INVENTION

[0002] This invention involves improvements to delay compensationsystems and methods in a wireless discrete tone communications system.

BACKGROUND OF THE INVENTION

[0003] Wireless communications systems, such as cellular and personalcommunications systems, operate over limited spectral bandwidths andmust make highly efficient use of the scarce bandwidth resource forproviding good service to a large population of users. Wireless systemsconsist of cells, each of which include a base station and remote units.The Personal Wireless Access Network described in the Alamouti, et alpatent application cited above, is an example of a successful technologyfor wireless service.

[0004] The personal wireless access network (PWAN) system described inthe referenced Alamouti et al. patent application, uses a form ofprotocol known as discrete tone to provide efficient communicationsbetween a base station and a plurality of remote units. In thisprotocol, the user's data signal is modulated by a set of weighteddiscrete frequencies or tones. The weights are spatial spreading codesthat distribute the data signals over many discrete tones covering abroad range of frequencies or tones. The weights are complex numberswith the real component acting to modulate the amplitude of a tone whilethe complex component of the weight acts to modulate the phase of thesame tone. Each tone in the weighted tone set bears a different datasignal. The weighted tone set for a particular user is transmitted tothe receiving station where it is processed with spatial despreadingcodes to recover the user's data signal. For each of the spatiallyseparated antennas at the receiver, the received discrete tone signalsare transformed from time domain signals to frequency domain signals.Despreading weights are assigned to each frequency component of thesignals received by each antenna element. The values of the despreadingweights are combined with the received signals to obtain an optimizedapproximation of individual transmitted signals characterized by aparticular discrete tone set and transmitting location. The PWAN systemhas a total of 2560 discrete tones (carriers) equally spaced in 8 MHz ofavailable bandwidth in the range of 1850 to 1990 MHz. The spacingbetween the tones is 3.125 kHz. The total set of tones are numberedconsecutively from 0 to 2559 starting from the lowest frequency tone.The tones are used to carry traffic messages and overhead messagesbetween the base station and the plurality of remote units. The traffictones are divided into 32 traffic partitions, with each traffic channelrequiring at least one traffic partition of 72 tones.

[0005] In addition, the PWAN system uses overhead tones to establishsynchronization and to pass control information between the base stationand the remote units. A Common Link Channel (CLC) is used by the base totransmit control information to the Remote Units. A Common AccessChannel (CAC) is used to transmit messages from the Remote Unit to theBase. There is one grouping of tones assigned to each channel. Theseoverhead channels are used in common by all of the remote units whenthey are exchanging control messages with the base station.

[0006] In the PWAN system, Frequency Division Duplexing, (FDD) is usedby the base station and the remote unit to transmit data and controlinformation in both directions. Transmission from the base station tothe remote unit is called forward transmission and transmission from theremote unit to the base station is called reverse transmission. The basestation and each remote unit must synchronize and conform to the timingstructure and both the base station and the remote unit must synchronizeto a framing structure. All remote units and base stations must besynchronized so that all remote units transmit at the same time and thenall base stations transmit at the same time. When a remote unitinitially powers up, it must acquire synchronization from the basestation so that it can exchange control and traffic messages within theprescribed time format. The remote unit must also acquire phasesynchronization for the signals so that the remote is operating at thesame frequency and phase as the base station.

[0007] When a remote unit is first installed, it transmits a signal overthe CAC channel to the base station. This signal will probably bereceived at the base station at a time which is not the same as theother remote units transmitting to the base station. The differencebetween the expected time of the signal, and the time that the signalactually arrives at the base station, is the delay.

[0008] Previous systems that compensate for this delay have includedsystems which have a delay time measurement resolution that is limited.Furthermore, delay time measurement in a protocol is subject to bothnoise noise and multipath fading.

SUMMARY OF THE INVENTION

[0009] This invention solves the delay compensation problem by providingthe base station with the ability to measure the magnitude and angle ofthe phase of delay compensation tones transmitted by the remote unit(RU) on the Common Access Channel (CAC), and calculating the slope ofthe phase ramp across the frequency range. Because the delay isproportional to the slope of the phase ramp, the delay can be calculatedand transmitted to the RU on the Common Link Channel. The RU is providedwith the ability to adjust the timing of the signals sent from the RU tothe base station on the CAC.

[0010] The delay compensation pilots are discrete tones with frequenciesthat are uniformly spaced throughout each of the upper and lowersub-band frequency ranges. These tones are transmitted by the RU on theCAC and received by the base station. The received tones are digitized,sampled, passed through a Fast Fourier Transform (FFT) processor andstored in FFT incremental frequency bins as complex numbers. Thesenumbers represent points in a 16 Quadrature Amplitude Modulation (QAM)constellation and are related to the average amount of energy of thereceived tone in the increment of frequency represented by the FFT bin.

[0011] In accordance with this invention, the base station uses theinformation about the signals received, as represented by the FFT bins,to calculate the amount of delay and prepare a signal containing thecorresponding amount of compensation to be sent to the RU on the CLC.

[0012] In accordance with the invention, the phase difference betweenthe expected phase angle and the received phase angle is calculated foreach delay compensation pilot (DCP) tone. The difference in phasebetween each successive DCP tone is proportional to the time delay andthe uniform frequency difference between tones. Because of this, theplot of phase difference as a function of frequency is a constant slopeline, where the slope is proportional to the time delay.

[0013] In a first embodiment of the invention, the phase angiedifferences are measured by taking the EFT output representing the firstDCP and multiplying it by the complex conjugate of the all sixteen ofthe FFT outputs from one of the two sub-bands. This gives sixteen phaseangle measurements for slope calculation.

[0014] In a second embodiment of the invention, each symbolcorresponding to the 16 elements of the QAM constellation is correlatedwith each symbol sequence from the sixteen FFT outputs from onesub-band. This allows sixteen phase-angle measurements based on thecorrelation coefficients.

[0015] In a third embodiment of the invention, the output of the FFTfrom both sub-bands is used. Sixteen symbol sequences are created fromeach sub-band, and then the first sequence of each sub-band are added toeach other, then the second sequence of each sub-band, and so on untilthe sixteenth sequence of each sub-band are added together. Sixteenphase angle measurements are generated when the QAM symbol sequence iscorrelated with each of the 16 symbol sequences.

[0016] In a fourth embodiment of the invention, the output of the FFTftom both sub-bands and from eight antenna elements is used. Sixteensymbol sequences are received from each sub-band for each antennaelement. Sixteen symbol sequences are created when the 32 firstsequences of each sub-band for each antenna element are summed, then the32 second sequences of each sub-band for each antenna are summed, and soon until the 32 sixteenth sequences of each sub-band for each antennaare summed. Each summed sequence is normalized and correlated with theQAM symbol sequence to generate 16 phase angle measurements.

[0017] Currently, the invention has advantageous applications in thefield of wireless communications, such as cellular communications orpersonal communications, where bandwidth is scarce compared to thenumber of the users and their needs. Such applications may be effectedin mobile, fixed, or minimally mobile systems. However, the inventionmay be advantageously applied to other, non-wireless, communicationssystems as well.

BRIEF DESCRIPTION OF THE DRAWINGS

[0018]FIG. 1 is a block diagram showing signals sent and received at abase station.

[0019]FIG. 2 is a block diagram showing how a delay compensation methodacts to synchronize the signals of multiple remote units.

[0020]FIG. 3 is a plot showing a best-fit line for nine data points.

[0021]FIG. 4 is a plot showing how phase wrapping results from the useof an arctan function.

[0022]FIG. 5 shows the mapping between Delay Compensation Pilots and thePWANs tone number.

[0023]FIG. 6 shows how the Second Pass algorithm is implemented toprovide phase angle measurements from 16 data points.

[0024]FIG. 7 shows how the Third Pass Algorithm is implemented toprovide phase angle measurements from 32 data points.

[0025]FIG. 8 shows how the Final algorithm is implemented to providephase angle measurements from 256 data points.

DETAILED DESCRIPTION

[0026] In the personal wireless access network (PWAN) application, thereis a need for the radio signals from each remote unit (RU) to arrive atthe base station at the same time. The RUs are at different distancesfrom the base station. It takes a finite amount of time for signals fromeach RU to travel to and from the base station. It takes approximately 1ns per foot for signals to propagate from the transmitter to receiver.

[0027] When a RU is installed, it needs to know when to transmit itssignals in relation to the signals received from the base station sothat its signal will arrive at the base station at the same time as thesignals from the other RUs. The base station measures the differencebetween the expected time of arrival and the actual time of arrival ofthe RU signals. It then transmits this measurement information to the RUso it can advance or delay the time that it sends signals to the basestation.

[0028]FIG. 1 shows the signals that appear at the base station. The basestation expects to see the signals from the RU arrive 225 ms after ittransmits its last burst. FIG. 2 shows the signals that appear at thebase and the RU. Before the RU is compensated, the signals it transmitsarrive at the base at a time that is different from the signalstransmitted by the other Rus. The base measures the delay and transmitsthe measurement to the RU. The RU then adjusts the time of transmissionto compensate for the delay.

[0029] Delay compensation can be performed upon installation and also atevery call setup. The delay compensation calculation routine examinesthe average signal power in the signals used for the delay calculationsand if they are above a certain threshold then a delay compensationmeasurement is made.

[0030] Phase Shift In Time-Delayed Sinusoids

[0031] There are sixteen tones available to the RU in each of the upperand lower sub-bands of a sub-band pair for Delay Compensationmeasurement purposes. These tones are referred to as Delay CompensationPilots (DCPs).

[0032] The RU transmits the DCPs to the base station with each DCPhaving the same phase shift. If the RU has been compensated properly theDCP tones arrive at the base station in phase with each other. If thesignal from the RU is delayed then each of the DCP tones experiences aphase shift.

[0033] A single DCP can be represented as a time domain signal in theform:

DCP _(n)(t)=sin(2πf _(n) t+φ _(n))

[0034] If the signal is delayed by a time of τ then the equation of thedelayed signal is:

DCP _(n)(t)=sin(2πf _(n)(t−τ)+φ _(n))=sin(2πf _(n) t−2πf _(n)τ+φ_(n))

[0035] Thus a phase difference of −2πf_(n)τ is introduced by the delay.Each of the DCPs are delayed by the same time, τ. When τ=0, the DCPs allhave the same phase. When τ≠0, each of the DCPs has a phase differenceproportional to the frequencies of the DCPs.

[0036] In the base, tones are 3.125 Khz apart. If two adjacent toneswith the same phase are delayed by a timer τ, then the phase differenceof the delayed tones is 2π (3.125 kHz)τ. Thus for every microsecond thesignal is delayed, the phase of the adjacent tones defers by 0.019635radians.

[0037] The Base measures the phase of each DCP and uses linearregression to fit the phases to a straight line. The slope of this lineis proportional to the delay. A slope of zero indicates that no delaycompensation is needed. A positive slope means that the signal isarriving too early and the RU needs to advance transmission of itssignal.

[0038] Measuring Phase Differences

[0039] A tone can be represented by a complex value a+ib. This can alsobe written in the form Ae^(jθ), where A=(a²+b²)^(½) and θ=tan⁻¹ (b/a).Here, A represents the magnitude of the tone and represents the phaseangle of the tone.

[0040] There are several ways of measuring the phase difference betweentwo tones. One way is to calculate the phase of each tone and subtractthem. This is computationally expensive however, as it requires twoarctan computations and two divisions. Another way is to multiply thefirst complex value by the complex conjugate of the other.Mathematically, this is expressed as:

A ₁ e ^(jθ1) xB ₁ e ^(j(θ1−φ1))

[0041] This results in a complex value that has a phase angle equal tothe difference in phases of the two original values. Now, a singlearctan and a division can be performed to determine the phase of thisvalue.

[0042] If we have a sequence, A, of complex values A₁e^(jθ1), A₂e^(jθ2),. . . A_(n)e^(jθn) are then phase shifted by slightly different amounts,and also attenuated by different amounts to give the sequence B:B¹e^(jφ1), B₂e^(jφ2), . . . B_(n)e^(jφn), we can calculate an averagephase shift by correlating the original sequence of values with theresulting sequence. Correlation of the sequence A, with the sequence Bis defined here as$\sum\limits_{i = 1}^{n}{A_{i}^{{{j\theta}_{i}}^{\quad_{i}}}B_{i}^{- {j\varphi}}}$

[0043] The result of the correlation is known as the correlationcoefficient. This is a complex value that has a phase angle equal to aweighted average of the phase differences of the corresponding elementsof A and B. If the phase difference between the ith element of eachsequence is constant then the correlation coefficient has a phase angleequal to this difference.

[0044] Correlation is a function that is very fast to perform on adigital signal processor (DSP) as it consists only of multiplicationsand additions.

[0045] Linear Regression

[0046]FIG. 3 shows how Linear Regression is used to find a line that isthe ‘best fit’ to a set of data points. If is assumed that the datax-coordinates are known exactly and that the y-coordinate error isnormally distributed. FIG. 3 shows some data points and the best fitline through those points. The ‘best fit’ in this case minimizes the sumof the squares of the errors between the y-coordinate of each point andthe y value of the line for the x-coordinate of the point. The error,e_(i) for one of the points is indicated in FIG. 3.

[0047] Linear regression is explained in many references. See, e.g.:Press et al., Numerical Recipes in C, ______, ______, Chapra et al.,Numerical Methods for Engineers, ______, ______ A quick overview of thelinear regression algorithm is also included here to aid understandingof how it works and how it used in the Delay Compensation algorithm ofthis invention.

[0048] Let e_(i) be the error associated with the point (x_(i)y_(i)).Let the equation of the line be y=mx+c. The square of the error e_(i) isgiven by: e_(i) ²−(y_(i)−mx_(i)−c)².

[0049] The sum of the squares of the errors is given by:${\sum\limits_{i = 1}^{n}e_{1}^{2}} = {\sum\limits_{i = 1}^{n}\left( {y_{i} - {m\quad x_{i}} - c} \right)^{2}}$

[0050] where there are n data points.

[0051] To minimize the sum of the squares, it is differentiated withrespect to m and with respect to c to give two simultaneous equations:${\frac{\quad}{c}{\sum\limits_{i = 1}^{n}e_{i}^{2}}} = {{- {\sum\limits_{i = 1}^{n}{2\left( {y_{i} - {m\quad x_{i}} - c} \right)}}} = {{{- 2}{\sum\limits_{i = 1}^{n}y_{i}}} + {2m{\sum\limits_{i = 1}^{n}x_{i}}} + {2c\quad n}}}$${\frac{\quad}{m}{\sum\limits_{i = 1}^{n}e_{i}^{2}}} = {{- {\sum\limits_{i = 1}^{n}{2{x_{i}\left( {y_{i} - {m\quad x_{i}} - c} \right)}}}} = {{{- 2}{\sum\limits_{i = 1}^{n}{x_{i}y_{i}}}} + {2m{\sum\limits_{i = 1}^{n}x_{i}^{2}}} + {2c\quad {\sum\limits_{i = 1}^{n}x_{i}}}}}$

[0052] For the best fit line, e_(i) ² is at a minimum and thederivatives of e_(i) ² are equal to zero. Setting the above equationsequal to zero and solving for m gives:$m = \frac{{n{\sum\limits_{i = 1}^{n}{x_{i}y_{i}}}} - {\sum\limits_{i = 1}^{n}{x_{i}{\sum\limits_{i = 1}^{n}y_{i}}}}}{{n{\sum\limits_{i = 1}^{n}x_{i}^{2}}} - \left( {\sum\limits_{i = 1}^{n}x_{i}} \right)^{2}}$

[0053] Once m is calculated, c can be found by back substitution asfollows:

c={overscore (y)}−m{overscore (x)}

[0054] where the x and y are the mean values of y and x, respectively.

[0055] The formula for calculating m can also be written as: where:$m = {\frac{\sum\limits_{i = 1}^{n}{y_{i}\left( {x_{i} - \overset{\_}{x}} \right)}}{\sum\limits_{i = 1}^{n}\left( {x_{i} - \overset{\_}{x}} \right)^{2}} = {\sum\limits_{i = 1}^{n}{y_{i}t_{i}}}}$where$t_{i} = \frac{x_{i} - \overset{\_}{x}}{\sum\limits_{i = 1}^{n}\left( {x_{i} - \overset{\_}{x}} \right)^{2}}$

[0056] This can be verified by direct substitution. If the x_(i) valuesare the same each time the linear regression algorithm is called, asthey are in the case of the delay compensation algorithm, then the t_(i)values can be calculated once, at initialization, and the slope of theline is calculated by multiplying each y_(i) by each t_(i) and summingthe results.

[0057] In the Delay Compensation algorithm, it is necessary to onlysolve for m and the final step of solving for c can be left out. Thex_(i) terms remain the same for each iteration of the delay compensationalgorithm, so the process of fitting data to a best fit line and findingits slope can be implemented with one multiply and one addition perpoint on the line. This algorithm is ideally suited for implementationon a DSP.

[0058] Unwrapping Phase Angles

[0059] The phase angle of a complex value a+jb lies in the range 0±π. Ifwe write this value in the form${A\quad ^{j\theta}\quad {then}\quad A} = {{\sqrt{a^{2} + b^{2}}\quad {and}\quad \theta} = {\tan^{- 1}\left( {{- b}/a} \right)}}$

[0060] The tan⁻¹ function returns a value between −π and π. If θ isincremented continuously and a graph of the phase angle of Ae^(jθ) isplotted, the graph in FIG. 4 is the result. The phase angle incrementsuntil it reaches π and then jumps back down to −π. This is known asphase wrapping.

[0061] In the Delay Compensation algorithm of this invention the phaseangle of each tone is calculated and the best straight line fit of theseangles is calculated. However, the phase angles are in the range 0±π andneed to be unwrapped before the linear regression algorithm is used onthem.

[0062] To use the phase unwrapping algorithm, a positive cutoff point(pos_cut) and a negative cutoff point (neg_cut) need to be chosen. Thecutoff points are used to decide when an angle needs to be unwrapped. Ifthe difference between two phase angles is outside the range of thecutoff angles then the angles need to be unwrapped. Good, generalpurpose values for pos-cut and neg-cut are +π and −π respectively.

[0063] In the case of the base station, cutoff points of +π and −π aregood first choice candidates. In simulations, these cutoff anglesallowed RUs to be compensated at distances of up to approx 8000 feet.Once the RUs were positioned further away than 8000 feet, the phasedifference between the angles was greater than −π. The unwrap algorithmtreats this as a phase difference in the positive direction and doesn'tunwrap directly in the positive direction and doesn't unwrap correctly.The way to fix this problem and allow RUs to be compensated at distancesof greater than 8000 feet is to change the phase wrap cutoff points.Cutoffs of +π/2 and −3π/2 allows RUs to be compensated at up to 12000feet. Cutoffs of +π/4 and −7π/4 could allow compensation at distances ofup to 14000 feet.

[0064] The phase unwrapping algorithm first creates an array A and setsthe first element in A equal to the first phase in the sequence. Next,it finds the difference between adjacent phases and stores thesedifferences in A. The second element in A is set to the difference ofthe first and second phase angles etc.

[0065] The algorithm then creates another array, P. For every entry in Agreater than pos_cut, that entry in P is set to −2π. For every entry inA less than neg_cut, that entry in P is set to +2π. If an entry in A isin the range neg_cut to pos_cut then the corresponding entry in P is setto 0.

[0066] Next each entry in P is replaced by the cumulative sum of all theprevious entries. This is done by summing the entries starting at thefirst element and replacing each element by the sum so far. Once this isdone, these elements of P are added to the original phases to give theunwrapped angles.

[0067] Phase Unwrapping Example

[0068] This example uses the algorithm described above with cutoffpoints of 0±to unwrap a typical set of phase angle. The sequence ofphase angles is:

[0069] {−0.1−1.2−2.2−3.1 2.9 1.4 0.6−0.8−1.9−2.7 2.8}

[0070] The array A is:

[0071] {−0.1−1.1−1.0−0.96−1.5−0.8−1.4−1.1−0.8 5.5}

[0072] The array P is:

[0073] {0 0 0 0−6.28 0 0 0 0 0−6.28)

[0074] Summing P and replacing each entry with the sum so far gives:

[0075] {0 0 0 0−6.28−6.28−6.28−6.28−6.28−6.28−12.56}

[0076] Adding this to the original phase angles gives:

[0077] {−0.1 1.2 2.2−3.1−3.38−4.88−5.68−6.88−7.08−8.18−8.98−9.76}

[0078] These phases are in a form that can be fitted to a straight line.

[0079] DCP Tone Mapping

[0080] There are 320 tones in each of the upper sub-band of a sub-bandpair. Of these 320 tones, 16 are used for delay compensation purposes.They are spaced 20 tones apart throughout the sub-band. The first DCP ina sub-band is at position 0, the next at position 20, etc., with thelast tone at position 300. The tones in one sub-band are shown in FIG.5. The DCPs in a given sub-band are numbered DC₀ to DCP₁₅.

[0081] For every microsecond the signal form the RU is delayed, there isa phase difference of 0.3927 radians between adjacent DCPs in asub-band.

[0082] Delay Compensation Algorithm

[0083] In order to minimize the effects of multipath fading that occurwhen signals are transmitted between the RU and the base station, DCPsare transmitted during eight consecutive bursts from the RU. Each burstcontains 16 DCPs on the upper sub-band and a further 16 DCPs in thelower sub-band.

[0084] There are 8 symbols transmitted on the DCPs—one in each burst.This symbol set, S, is represented as S₀, S₁, . . . S₇. So istransmitted on all the DCPs of the first burst. S₁, is transmitted onall the DCPs of the second burst etc. The symbols are encoded using QPSKencoding and are normalized so their average power is equal to theaverage power of the traffic channel data.

[0085] The actual symbol set transmitted is:

S=[1−i, −1+i, 1+i, −1+i, −1−i, −1+i, −1−i, 1−i]×f _(n)

[0086] where f_(n) is the normalization factor.

[0087] The actual Delay Compensation Algorithm is best described inincremental stages. This helps show how the algorithm has been developedto make it as immune as possible to noise and multipath fading.

[0088] A first pass at calculating the phase difference of the DCPs isto simply take the DCPs of the upper or lower sub-band of one tone burstand multiply the first DCP by the complex conjugate of the other DCPs.This gives the phase difference between the DCP and the other DCPs inthat burst. These phase differences can then be unwrapped and fitted toa straight line using linear regression. The slope of the line isproportional to the delay.

[0089] The above is a perfectly valid method of measuring the delay inthe absence of noise, multipath channel fading and other interference.When these factors are taken into account, this algorithm doesn'tprovide reliable results and a more robust algorithm is required.

[0090]FIG. 6 shows how the Second Pass Algorithm is implemented. Asecond pass algorithm takes into account the DCPs from the upper orlower sub-band of all the tone bursts. Sixteen sequences are createdfrom the DCPs in each burst. The first sequence consists of the DCP0from each burst. The second sequence consists of the DCP1 form eachburst, etc. The symbol set S is then correlated with each of thesesequences. This results in sixteen correlation coefficients. The phaseof each coefficient is then calculated and these phases are unwrappedand fitted to a best fit line using linear regression. Once again, theslope of the line is proportional to the delay in the signal from theRU.

[0091] This algorithm is much more robust than the first pass algorithmand averages out the effects of noise and multipath fading.

[0092]FIG. 7 shows how the Third Pass algorithm is implemented. Evenmore accurate results can be obtained by using the DCPs from the upperand lower sub-bands off one antenna element. Thirty two sequences arecreated from the DCPs from eight bursts. The first sequence, S₀ consistsof the DCP0 from the lower sub-band of each burst. The second sequence,S₁ consists of the DCP1 from the lower sub-band of each burst, etc. Theseventeenth sequence, S₁₆ consists of the DCP0 from the upper sub-bandof each burst etc.

[0093] Next S₀ and S₁₆ are correlated with other. This results in acorrelation value, the phase angle of which is the phase difference ofthe two sequences. This correlation value is normalized to give it anabsolute value of one. Next, S₁₆ is multiplied by the normalizedautocorrelation value. This effectively ‘rotates’ the sequence S₁₆ togive it the same phase as So. Finally the corresponding elements of S₀and S₁₆ are summed together. This sum also has the same phase as So inthe sense that if this sum is correlated with S₀, a real value results.This procedure is repeated for S₁ and S₁₇, S₂ and S₁₈ and so on untilS18 and so until S₁₅ and S₃₁ have been summed.

[0094] The original symbol set S is then correlated with each of thesenewly generated sequences. This results in sixteen correlationcoefficients. The phase of each coefficient is then calculated and thesephases are unwrapped and fitted to a best fit line using linearregression. Once again, the slope of the line is proportional to thedelay in the signal from the RU.

[0095] Simulations have shown that this algorithm improves upon theresults of the second pass algorithm.

[0096]FIG. 8 shows how the Final Algorithm is implemented. The FinalAlgorithm uses the DCP tone information from all eight antenna elements.Each antenna provides 32 sets of eight symbols. There are 32 DCPs perburst from each antenna, and eight bursts. Each set of symbols is madeup of eight DCPs from one antenna, one DCP from each burst. The symbolsets from antenna 0 are numbered S₀ to S₃₁. Those from antenna 1 arenumbered S₃₂ to S₆₃ etc. Those from antenna 7 are numbered S₂₄₀ to S₂₅₅(see FIG. 4.8).

[0097] Symbol sets S₀, S₁₆, S₃₂, S₂₄₀ need to be added together and thenthe sum is correlated with the original symbol set, S, to determine thephase angle associated with that tone. To add them together, So iscorrelated with S₁₆, the correlation coefficient is normalized and S₁₆is multiplied by the normalized correlation coefficient. The same thingis done with S₀ and S₃₂, S₀ and S₄₈ and so on. Now S₀, S₁₆, . . . S₂₄₀are added together and this sum is correlated with S. The angle of theresulting correlation coefficient is the phase angle for that tone.

[0098] The above process is then repeated for S₁, ₁₇, S₃₃, S₄₉, . . .S₂₄₀ to measure the phase angle for the second tone. This is repeateduntil all 16 phase angles have been measured. These phases are unwrappedand fitted to a best fit line using linear regression, as before. Yetagain, the slope of the line is proportional to the delay in the signalfrom the RU.

[0099] No simulations have been none on the Final algorithm. However, ituses information from all eight antennas and from both sub-bands,averaging the data received before coming up with a result. As noted inthe discussion about the Third Pass algorithm, improvements inmeasurement accuracy were obtained when data from the upper and lowersub-bands were averaged together. The Final algorithm uses eight timesthe amount of data as the Third Pass algorithm, thus making themeasurement less susceptible to noise and multipath fading, and flutherimprovements in measurement accuracy are expected. If processing time ofthe algorithm is an issue then a reduced version of the final algorithmcan be used. In a reduced version, tones are processed from as manyantennas as can be processed in the allotted time, with a slightreduction in the accuracy of the results.

[0100] Although the preferred embodiments of the invention have beendescribed in detail above, it will be apparent to those of ordinaryskill in the art that obvious modifications may be made to the inventionwithout departing from its spirit or essence. Consequently, thepreceding description should be taken as illustrative and notrestrictive, and the scope of the invention should be determined in viewof the following claims.

What is claimed is:
 1. A highly bandwidth-efficient communicationsmethod, comprising: receiving at a base station during a first timeperiod a first spread signal from a first remote unit, said signalhaving a first common access channel data signal spread over a firstplurality of discrete tones in accordance with a first spreading codeassigned to said first remote unit; receiving at the base station duringa second time period a second spread signal from said second remoteunit, said signal having a second common access channel data signalspread over a second plurality of discrete tones in accordance with asecond spreading code assigned to said second remote unit, said secondtime period occurring at a different time than said first time period,said second time period occurring at a time expected by said basestation; adaptively despreading said first spread signal received atsaid base station by using a first despreading code that is based on thecharacteristics of said received signal; calculating a delay at saidbase station, said delay being the time difference between the start ofsaid second time period and said first time period, said delay having amagnitude and a direction; and transmitting from said base station tosaid first remote unit a signal that includes said magnitude and saiddirection of said delay.
 2. The method of claim 1, which furthercomprises: sampling and digitizing said discrete tones; passing saidsampled and digitized tones through a fast Fourier transform processorto form complex numbers which represent points in a 16 QuadratureAmplitude Modulation (QAM) constellation which are related to theaverage amount of energy of the discrete tones; and storing said complexnumbers in FFT incremental frequency bins.
 3. The method of claim 2, inwhich said first and second spread signals are a set of discrete tonesuniformly spaced across a selected bandwidth.
 4. The method of claim 3,in which said signals are of a first set of a selected size with aselected uniform spacing over a first sub-band and a second set ofsignals of the same size with the same spacing over a second sub-band.5. The method of claims 1, 2, 3, or 4 in which said first and secondspread signals are received by a multiplicity of antenna elements. 6.The method of claim 3 in which the delay calculation step is furthercomprised of: multiplying the complex number corresponding to a point inthe QAM constellation of one of the received tones by the complexconjugates of the complex numbers corresponding to said point in the QAMconstellation of each of said received tones to form a set of datapoints, said data points having frequency and phase angle magnitudes;fitting a line to said data points, said line having a slope measured inunits of phase per unit frequency; multiplying said slope by acoefficient proportional to said uniform frequency spacing.
 7. Themethod of claim 4 in which the delay calculation step is furthercomprised of: multiplying each complex number corresponding to a pointin the QAM constellation of each of the received tones by the complexconjugate of each corresponding element of a symbol set to form a set ofdata points, said symbol set corresponding to all the points of the QAMconstellation multiplied by a normalization factor so the average powerof each point is equal to the average amount of energy in the discretetones. said data points having frequency and phase angle magnitudes;fitting a line to said data points, said line having a slope measured inunits of phase per unit frequency; multiplying said slope by acoefficient proportional to said uniform frequency spacing.
 8. Themethod of claim 5 in which the delay calculation step is furthercomprised of: multiplying each complex number corresponding to a pointin the QAM constellation of each of the received tones of a firstsub-band by the complex conjugates of the corresponding point in the QAMconstellation of each of the tones in a second sub-band to form a set ofcorrelation coefficients; normalizing the set of correlationcoefficients to create a set of normalized coefficients with an absolutevalue of 1; multiplying each of said normalized coefficients by thecorresponding point in the QAM constellation of said tones in saidsecond sub-band to form a rotated set of complex numbers; summing eachelement of the rotated set of complex numbers with the complex numbercorresponding to the corresponding point in the QAM constellation ofsaid tones in said first sub-band; multiplying each summed complexnumber by the complex conjugate of each corresponding element of asymbol set to form a set of data points, said symbol set correspondingto all the points of the QAM constellation multiplied by a normalizationfactor so the average power of each point is equal to the average amountof energy in the discrete tones, said data points having frequency andphase angle magnitudes; fitting a line to said data points, said linehaving a slope measured in units of phase per unit frequency;multiplying said slope by a coefficient proportional to said uniformfrequency spacing.
 9. The method of claim 5 in which said first andsecond spread signals are received by a multiplicity of antennaelements, and in which the delay calculation step is further comprisedof: multiplying each complex number corresponding to a point in the QAMconstellation of each of a first antenna element's received tones of afirst sub-band by the complex conjugates of the corresponding point inthe QAM constellation of each of said first antenna element's receivedtones in a second sub-band to form a first set of correlationcoefficients; normalizing the set of correlation coefficients to createa first set of normalized coefficients with an absolute value of 1;multiplying each of said normalized coefficients by the correspondingpoint in the QAM constellation of said first antenna element's receivedtones in said second sub-band to form a first rotated set of complexnumbers; multiplying each complex number corresponding to said point inthe QAM constellation of each of said first antenna element's receivedtones of said first sub-band by the complex conjugates of thecorresponding point in the QAM constellation of each of a second antennaelement's received tones in said first sub-band to form a second set ofcorrelation coefficients; normalizing the set of correlationcoefficients to create a second set of normalized coefficients with anabsolute value of I; multiplying each of said normalized coefficients bythe corresponding point in the QAM constellation of said second antennaelement's received tones in said first sub-band to form a second rotatedset of complex numbers; multiplying each complex number corresponding tosaid point in the QAM constellation of each of said first antennaelement's received tones of a first sub-band by the complex conjugatesof the corresponding point in the QAM constellation of each of a secondantenna element's received tones in a second sub-band to form a thirdset of correlation coefficients; normalizing the set of correlationcoefficients to create a third set of normalized coefficients with anabsolute value of 1; multiplying each of said normalized coefficients bythe corresponding point in the QAM constellation of said second antennaelement's received tones in said second sub-band to form a third rotatedset of complex numbers; continuing to perform multiplying, normalizing,and normalizing steps for each sub-band for each antenna element tocreate a set of rotated sets of complex numbers; summing each element ofeach rotated set of complex numbers with the complex numbercorresponding to the corresponding point in the QAM constellation ofsaid first antenna element's received tones in said first sub-band;multiplying each summed complex number by the complex conjugate of eachcorresponding element of a symbol set to form a set of data points, saidsymbol set corresponding to all the points of the QAM constellationmultiplied by a normalization factor so the average power of each pointis equal to the average amount of energy in the discrete tones, saiddata points having frequency and phase angle magnitudes; fitting a lineto said data points, said line having a slope measured in units of phaseper unit frequency; multiplying said slope by a coefficient proportionalto said uniform frequency spacing.
 10. The method of claim 6, 7, 8, or 9wherein said fitting step comprises using a linear regression algorithmto fit said slope.
 11. The method of claims 6, 7, 8, 9 wherein saiddelay calculation step further comprises: unwrapping said phase anglevalue of each of said data points to create a set of unwrapped datapoints; fitting a line to said unwrapped data points, said line having aslope measured in units of phase per unit frequency; multiplying saidslope by a coefficient proportional to said uniform frequency spacing.12. The method of claim 11 in which said phase angle unwrapping stepcomprises: setting a positive phase angle cutoff value; setting anegative phase angle cutoff value; comparing said phase angle of each ofsaid data points with said cutoff values; summing −2 with said phaseangle of each of said data points less than said negative phase anglecutoff; performing no summation with said phase angle of each of saiddata points between said negative phase angle cutoff value and saidpositive phase angle cutoff value; summing 2 with said phase angle ofeach of said data points greater than said positive phase angle cutoff;and creating a set of unwrapped data points corresponding to saidun-summed phase angles and said summed phase angles.
 13. The method ofclaim 12 in which the negative phase angle cutoff value is −π and thepositive phase angle cutoff is π.
 14. The method of claim 12 in whichthe negative phase angle cutoff value is −3π/2 and the positive phaseangle cutoff is π/2.
 15. The method of claim 12 in which the negativephase angle cutoff value is −7π/4 and the positive phase angle cutoff isπ/4.
 16. The method of claim 12 in which the negative phase angle cutoffand the positive phase angle cutoff are selected to allow said delaycalculation where said base station and said first remote unit areseparated by a distance of 0 to 14000 ft.